home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / c / cc02.zip / FUNCT.C < prev    next >
Text File  |  1985-07-29  |  2KB  |  161 lines

  1.  
  2. /*    funct.c  `C' library functions */
  3. /*    be sure to #include <ascii.h> in source */
  4.  
  5. strcpy(dest, src)               /* string copy routine */
  6. char  *dest, *src;
  7. {
  8.       while (*dest++ = *src++)
  9.      ;
  10. }
  11.  
  12. isodigit(c)                   /* check if octal digit */
  13. char  c;
  14. {
  15.       return (c >= '0' && c <= '7');
  16. }
  17.  
  18. isxdigit(c)                   /* check if hexidecimal digit */
  19. char  c;
  20. {
  21.       return (isdigit(c) || (c >= 'A' && c <= 'F') || (c >= 'a' && c <= 'f'));
  22. }
  23.  
  24. iscntrl(c)
  25. char  c;
  26. {
  27.       return ((c >= NULL && c < SPACE) || c == DEL);
  28. }
  29.  
  30. isprint(c)
  31. char  c;
  32. {
  33.       return (c >= SPACE && c < DEL);
  34. }
  35.  
  36. ispunct(c)
  37. char  c;
  38. {
  39.       return (isascii(c) && !(isalnum(c) || iscntrl(c)));
  40. }
  41.  
  42. iswhite(c)
  43. char  c;
  44. {
  45.       return (c == SPACE || c == TAB || c == EOL || c == NL);
  46. }
  47.  
  48. tolower(c)
  49. char  c;
  50. {
  51.       return (isupper(c) ? (c | '\x20') : c);
  52. }
  53.  
  54. toupper(c)
  55. char  c;
  56. {
  57.       return (islower(c) ? (c & ~'\x20') : c);
  58. }
  59.  
  60. char  *gets(string)
  61. char  *string;
  62. {
  63.       char  *str;
  64.       int   c;
  65.  
  66.       str = string;
  67.  
  68.       while ((c = getchar()) != EOL && c != EOF)
  69.      *string++ = c;
  70.       *string = EOS;
  71.  
  72.       if ( c == EOF && str == string)
  73.      return (NULL);
  74.  
  75.       return (line);
  76. }
  77.  
  78. strlen(string)
  79. char  *string;
  80. {
  81.       int   length = 0;
  82.  
  83.       while (*string++)
  84.      ++length;
  85.  
  86.       return (length);
  87. }
  88.  
  89. getstr(string)
  90. char  *string;
  91. {
  92.       int   c, length = 0;
  93.  
  94.       while ((c = getchar()) != EOL && c != EOF) {
  95.      *string++ = c;
  96.      ++length;
  97.       }
  98.       *string = EOS;
  99.  
  100.       return (c == EOF ? (-1 * length) : length);
  101. }
  102.  
  103. char  *stolower(string)
  104. char  *string;
  105. {
  106.       char  *str;
  107.  
  108.       str = string;
  109.       while (*string = tolower(*string))
  110.      string++;
  111.  
  112.       return (str);
  113. }
  114.  
  115. char  *stoupper(string)
  116. char  *string;
  117. {
  118.       char  *str;
  119.  
  120.       str = string;
  121.       while (*string = toupper(*string))
  122.      string++;
  123.  
  124.       return (str);
  125. }
  126.  
  127. char  *strcat(string1, string2)
  128. char  *string1, *string2;
  129. {
  130.       char  *ptr = string1;
  131.  
  132.       while (*string1)
  133.      ++string1;
  134.       while (*string1++ = *string2++)
  135.      ;
  136.  
  137.       return (ptr);
  138. }
  139.  
  140. strcmp(string1, string2)
  141. char  *string1, *string2;
  142. {
  143.       while (*string1 == *string2) {
  144.      if (!*string1)
  145.         return (0);
  146.      ++string1;
  147.      ++string2;
  148.       }
  149.  
  150.       if (*string1 < *string2)
  151.      return (-1);
  152.       else
  153.      return (1);
  154.  }
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.